组合选择符基本介绍
- 组合选择符说明了两个选择器直接的关系
CSS
组合选择符包括各种简单选择符的组合方式- 在
CSS3
中包含了四种组合方式- 后代选取器(以空格分隔)
- 子元素选择器(以大于号分隔)
- 相邻兄弟选择器(以加号分隔)
- 普通兄弟选择器(以破折号分隔)
后代选取器
后代选取器匹配所有值得元素的后代元素
实例:
1 | <div> |
1 | div p{ |
效果:
子元素选择器
如果您不希望选择任意的后代元素,而是希望缩小范围,只选择某个元素的子元素,请使用子元素选择器
html
代码的文档树结构如图
1 | <div class="mainDiv"> |
1 | .mainDiv{ |
- 然后我们去掉子代选择器,添加一个后代选择器
1 | .mainDiv div{ |
效果
- 经过上面的结果展示,我们能得到结论:子代选择器~ 和后代选择(空格)的区别:
- 子代选择器:只对应用对象的直接相应子节点有效。如实例代码中的儿子
div
- 后代选择器:对应用对象内的所有相应子节点都有效。如实例中的儿子
div
和孙子div
- 子代选择器:只对应用对象的直接相应子节点有效。如实例代码中的儿子
相邻兄弟选择器
- 相邻兄弟选择器可选择紧接在另一元素后的元素,且二者有相同父元素
- 以下实例选取了所有位于
<div>
元素后的第一个<p>
元素
1 | <div> |
1 | div + p{background:red;} |
效果:
普通相邻兄弟选择器
- 普通兄弟选择器选取所有指定元素的相邻兄弟元素
1 | <div> |
1 | div ~ p{background:red;} |
效果